<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS选择器</title>
    <style>
        /*标签名选择器*/
        h4 {
            color: red;
            background: aqua;
        }

        div {
            width: 100px;
            height: 100px;
            background: red;
        }

        /*id选择器，只能选一个*/
        #div2 {
            border: 5px solid black;
        }

        /*    类选择器*/
        .error {
            background: red;
        }

        .success {
            background: green;
        }

        .msg {
            color: white;
        }

        /*    伪类选择器*/
        /*    hover选中元素悬停状态*/
        /*    紧挨着写是与的关系，必须满足所有条件才可以生效样式*/
        #div2:hover {
            background: yellow;
        }

        /*群组选择器 逗号隔开，是或的关系，只要满足其中一个即可*/
        #div2, h4, .error {
            text-decoration: underline; /*文本修饰：下划线*/
        }

        /*通配符选择器 选中所有元素*/
        * {
            font-style: italic; /*字体样式：斜体*/
        }

        /*    伪类选择器*/
        a:link { /*链接未被访问过的状态*/
            color: gray;
        }

        /*链接已经被访问过的状态*/
        a:visited {
            color: green;
        }

        /*鼠标悬停状态*/
        a:hover {
            color: orange;
        }

        /*激活状态*/
        a:active {
            color: red;
        }

        /*属性选择器*/
        [type="text"] {
            background: yellow;
        }
        /*后代选择器:选中包含在内的所有后代元素 子元素 孙子元素...*/
        div span{
            color: pink;
        }
    /*    直接子代选择器*/
        #d1>div>span{
            color: yellow;
        }
    </style>
</head>
<body>
<h4>我是标题</h4>
<p>我是段落</p>
<a href="#">我是超链接</a>
<h4>我是标题2</h4>
<p>我是段落2</p>
<div>我是div</div>
<div id="div2">我是div2</div>
<div>我是div3</div>

<hr>
<span class="error msg">用户名被占用</span>
<span class="error msg">两次密码不一致</span>
<span class="success msg">手机号格式正确</span>
<span class="success msg">邮箱格式正确</span>
<a href="https://www.baidu.com">我是超链接</a>
<a href="abc">我是超链接2</a>

<hr>
<input type="text">
<input type="password">
<hr>
<div id="d1">
    <span>1</span>
    <div>
        <span>2</span>
        <b>测试文字</b>
        <p>你好<span>小可爱</span></p>
    </div>
    <span>3</span>
</div>
</body>
</html>